#ifndef __UART_H__
#define __UART_H__


#define Cutover_IO        \
    {                     \
        Lin.RUN_flag = 0; \
        MODE_IO();        \
    } /*端口切换到外部中断模式*/

typedef enum
{
    NO_ERR = 0,    //无错误
    ERR_BLANK = 1, //同步间隔段
    ERR_SYNC = 2,  //同步帧错误
    ERR_PID = 3,   // PID超时错误
    ERR_DATA = 4,  //数据超时错误
    ERR_CHECK = 5, //效验和错误
}LinErrType;

typedef struct
{
    uint8 RUN_flag;   // LIN标志位
    uint8 Syn;        //同步数据
    uint8 PID;        // LINID 此处的PID  ,ID=PID&0x3f是低6位
    uint8 Data[8];    // LIN数据
    uint8 Leng;       // LIN数据长度
    uint8 Check;      // LIN数据校验
    uint8 CheckMode;  // LIN数据校验模式 1:增强校验和  0:标准校验
    uint8 Count;      // LIN计数
    uint8 Err;        // LIN错误
    uint8 Err_Count;      //总线错误计数
    uint8 Sleep_flag;      //总线休眠
    uint8 Send_flag;   // LIN标志位
    uint16 Time4s;    //总线4秒无数据休眠
    uint16 Timeblank; //总线4秒无数据休眠  同步间隔段时间？
    
} LIN_Struc;

extern LIN_Struc Lin;


typedef struct
{
	uint16 fixedvalue;
	uint16 R_DATA[10];//={0,0,0,0,0,0,0,0,0,0};
	uint16 T_DATA[10];//={0,0,0,0,0,0,0,0,0,0};
	uint16 Uredata;
	uint16 UARxCnt;
 
    uint16 SpeedRef;
	uint8 ResponceFlag;
	uint8 UsaTxlen;
	uint8 SendCnt;
} MCUART;

extern MCUART xdata Uart;



void MODE_IO(void);
void MODE_UART(void);
void LIN_Send(uint8 *str, uint8 Check, uint8 Leng);
uint8 LinCheck(uint8 CheckMode, uint8 PID, uint8 Leng, uint8 *str);
void TIM3_Init(void);


#endif






































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































